1. Field of the Invention
This invention relates to positioning systems. More particularly this invention relates to satellite based positioning systems.
2. Description of the Prior Art
The GPS-system (Global Positioning system) is an example of a prior art positioning system, where the position of a receiver is calculated based on signals transmitted from satellites to the receiver. In the following the invention will, by way of example, be explained mainly in connection with the GPS-system. It should, however, be observed that the present invention can be utilized also in other positioning systems.
A GPS-satellite transmits continuously a signal L1 on the 1575.42 MHz frequency. The L1 signal contains a pseudo-random-code, almanac data and ephemeris data. The pseudo-random-code identifies the transmitting satellite. The almanac data contains the approximate orbits of the satellites. This information is stored in the memory of the receiver so it knows the orbits of the satellites. Any satellite can travel slightly out of orbit. The corrected and exact orbit-parameters of a satellite are included in the ephemeris data. A GPS satellite further transmits other important information such as status of the satellite, current date and time.
A GPS receiver calculates its position based on the distance to a number of satellites whose positions are known for the receiver. If three or more satellites are available, then the receiver is able to calculate a 2D position, in other words the latitude and longitude. With four or more satellites available, a GPS receiver is able to calculate a 3D position which includes latitude, longitude and altitude.
The pseudo-distance between a GPS receiver and a satellite is calculated based on the propagation time needed for a signal transmitted from the satellite to reach the receiver. In order to make this calculation possible a GPS satellite transmits an own unique C/A code (Course/Acquisition) at predetermined moments, with a 1 ms interval. The GPS receiver is generating the same C/A code and it tries to match it up to the C/A code received from the satellite. The GPS receiver compares the two codes to determine how much it needs to delay (or shift) its code to match the satellite code. This delay time (shift) is multiplied by the speed of light to get the pseudo-distance.
The reason why the above mentioned calculation results in a pseudo-distance rather than in the actual distance, is that the internal clock of a GPS receiver is not as precise as the clock of a satellite. It is, however, possible to determine the position of a GPS receiver based on the pseudo-distance to four satellites whose positions are known, by recomputing the four fixes until the clock error disappears.
A problem with the above described prior art navigation system is that the C/A code transmitted by a satellite is repeated with relatively small intervals (1 ms). Thus if the sampling rate of the receiver is relatively low (such as 1 kHz for instance) it is possible that the receiver will lock to the wrong C/A code. If the receiver instead of locking to the correct C/A code locks to the previous or to the following C/A code, then the travel time measured by the receiver will have an error of 1 ms, which will lead to an error of 300 km in the calculated pseudo-distance.
It is an object of the present invention to provide a solution which makes it possible to avoid the above mentioned error.
It is a further object of the present invention to provide a solution which makes it possible to obtain reliable positions with a receiver using a low sampling rate.
It is still a further object of the present invention to obtain a solution which makes it possible for a receiver to reduce the time and the amount of calculations needed in order to obtain a first position.
The objects of the invention are achieved with a method for determining positional coordinates of a receiver, comprising: receiving signals from satellites, said signals including at least information which can be used to calculate the locations and the speeds of said satellites, measuring a doppler shift of said received signals, calculating a relative speed of said satellites based on the measured doppler shifts, calculating preliminary positional coordinates for said receiver based on the locations of the satellites, the speeds of the satellites and the relative speeds of the satellites, calculating pseudo-distances between said satellites and said receiver based on the propagation times for signals transmitted at predetermined moments from said satellites to said receiver, correcting said pseudo-distances based on said preliminary positional coordinates and the locations of the satellites, and determining said positional coordinates of said receiver based on the corrected pseudo-distances and the locations of said satellites.
The objects of the present invention are according to a second aspect of the invention achieved with a receiver of a satellite positioning system, said receiver comprising: reception means for receiving signals from satellites in order to calculate the locations and the speeds of said satellites, measuring means for measuring the doppler shifts of said signals, calculating means for calculating preliminary positional coordinates of said receiver based on the locations of the satellites, the speeds of the satellites and the measured doppler shifts of said signals, pseudo-distance calculation means for calculating pseudo-distances between the receiver and said satellites based on propagation times of signals transmitted at predetermined moments from said satellites to said receiver, comparison means for comparing the calculated pseudo-distances with distances calculated based on said preliminary positional coordinates and the locations of the satellites, and for controlling said pseudo-distance calculation means for recalculating the pseudo-distances under predetermined conditions, and means for calculating the position of said receiver based on the calculated pseudo-distances and the locations of said satellites.
The present invention utilizes the doppler shift of signals received from satellites in order to determine the relative speeds of the satellites, as seen from the receiver. The relative speeds of the satellites together with the estimated positions of the satellites and the actual speeds of the satellites can be used to determine a preliminary position of the receiver. The receiver can estimate the position of a satellite as the orbit of the satellite is known by using its own internal clock. The estimated position is not exactly correct due to the error of the internal clock. However, the preliminary position obtained in the above described manner is accurate enough to detect if there is a significant error in a pseudo-distance calculated between the receiver and a satellite. Thus an error caused by the fact that the receiver has locked to a wrong C/A-code can be detected, and the error in the pseudo-distance can be corrected.
The present invention is very useful in order to determine the first position of a receiver, in other words in a situation where no prior position is available. The invention involves significant advantages when it is utilized in, for instance, portable receivers, as it makes it possible to obtain a reliable position even though the sampling rate used by the receiver is relatively low. A low sampling rate means that the energy consumption of the receiver can be kept at a low level, which is a significant advantage in a portable device where the source of energy is a battery.
The preferred embodiments of the receiver of the invention are disclosed in the dependent claims 2-5.